package com.example.administrator.activity.parcitise.Storage.SQList;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.support.annotation.Nullable;
import android.util.Log;


public class Myheleper extends SQLiteOpenHelper {
    /**
     * 构造方法
     *
     * @param 上下文对象
     * @param name
     */
    public Myheleper(@Nullable Context context, @Nullable String name, @Nullable SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);
        Log.v("sqlite", "构造方法");
    }

    /**
     * 数据库初次创建的时候执行。只执行一次
     * 创建表结构的语句
     * 自增写在主键后面
     *
     * @param db
     */

    @Override
    public void onCreate(SQLiteDatabase db) {
        String sql = "CREATE TABLE USER(\n" +
                "   id integer  PRIMARY KEY AUTOINCREMENT,name VARCHAR(20)\n" +
                ")";
        /**
         * 执行sql语句
         */
        db.execSQL(sql);
        Log.v("sqlite", "onCreate方法");
    }


    /**
     * 数据库升级，当版本更新的时候，执行
     * 比如要修改表的结构
     * 修改表结构需要在OnUpgreade
     *
     * @param db
     * @param oldVersion
     * @param newVersion
     */
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        String sql = "ALTER TABLE USER ADD sex CHAR(5)";
        db.execSQL(sql);
        Log.v("sqlite", "OnUpgrade方法");
    }
}
